import java.util.Arrays;

/**
 * @Author liangzai
 * @Description:
 */
public class Training {
    //每一个查询的最大美丽值
    public int[] maximumBeauty(int[][] items, int[] queries) {
        int[][]mapping=new int[queries.length][2];//记录queries中每个查询的原来位置
        int[]result=new int[queries.length];
        for (int i = 0; i < queries.length; i++) {//记录原下标映射关系
            mapping[i][0]=queries[i];
            mapping[i][1]=i;
        }
        Arrays.sort(mapping,(a, b)->b[0]-a[0]);//查询价格从大到小
        Arrays.sort(items,(a,b)->b[1]-a[1]);//美丽值从大到小
        for(int i=0,j=0;i<queries.length;i++){
            while (j<items.length&&mapping[i][0]<items[j][0]){
                j++;
            }
            //选择价格小于当前查询的最大美丽值就行
            result[mapping[i][1]]=j==items.length?0:items[j][1];
        }
        return result;
    }
}
